import ssau.knyazev.core.Complex;
import ssau.knyazev.modules.Generator;
import ssau.knyazev.modules.Printer;

public class Index {

	public static void main(String[] args) {
		int a = 3;
		int b = 0;
		int i = a+b;
		switch (i) {
		case 3:
			System.out.println("i = " + 3);
			break;

		default:
			System.out.println(i);
			break;
		}
	}
	
	protected static void inverse(float[] arr){
		int dl = arr.length/2;
		int st = arr.length - 1;
		int j = 0;
		for (int i = 0; i < st; i++){
			if (i < j){
				float s0 = arr[i];
				arr[i] = arr[j];
				arr[j] = s0;
			}
			int k = dl;
			while (k <= j){
				j = j - k;
				k = k >> 1;
			}
			j = j + k;
		}
	}
	
	protected static void inverse(float[][] src){
		int N = src.length;
		for (int i = 0; i < N; i++){
			inverse(src[i]);
		}
		int dl = src.length/2;
		int st = src.length - 1;
		int j = 0;
		for (int i = 0; i < st; i++){
			if (i < j){
				float[] s0 = src[i];
				src[i] = src[j];
				src[j] = s0;
			}
			int k = dl;
			while (k <= j){
				j = j - k;
				k = k >> 1;
			}
			j = j + k;
		}
	}
	
	protected static void inverse(float[][] arr, int power){
		for (int row = 0; row < arr.length; row++){
			for (int col = 0; col < arr.length; col++){
				int indexx = row;
				int indexy = col;
				int newrow = 0;
				int newcol = 0;
				for (int l = power; l >= 0; l--){
					int k = 1 << l;
					if (k <= indexx){
						indexx -= k;
						int delta = 1 << (power-l);
						newrow += delta;
					}
					if (k <= indexy){
						indexy -= k;
						int delta = 1 << (power-l);
						newcol += delta;
					}
				}

				if (row > newrow){
					float t = arr[row][col];
					arr[row][col] = arr[newrow][newcol];
					arr[newrow][newcol] = t;
				} else if (row == newrow && col > newcol){
					float t = arr[row][col];
					arr[row][col] = arr[newrow][newcol];
					arr[newrow][newcol] = t;
				}
				
			}
		}
	}

}
